home *** CD-ROM | disk | FTP | other *** search
/ Chip 2007 January, February, March & April / Chip-Cover-CD-2007-02.iso / Pakiet bezpieczenstwa / mini Pentoo LiveCD 2006.1 / mpentoo-2006.1.iso / modules / nessus-2.2.8.mo / usr / lib / nessus / plugins / squirrelmail_144.nasl < prev    next >
Text File  |  2005-03-31  |  3KB  |  86 lines

  1. #
  2. # This script was written by George A. Theall, <theall@tifaware.com>.
  3. #
  4. # See the Nessus Scripts License for details.
  5. #
  6.  
  7. if (description) {
  8.   script_id(16228);
  9.   script_bugtraq_id(12337);
  10.   script_version("$Revision: 1.4 $");
  11.  
  12.   script_cve_id(
  13.     "CAN-2005-0075",
  14.     "CAN-2005-0103", 
  15.     "CAN-2005-0104"
  16.   );
  17.  
  18.   name["english"] = "SquirrelMail < 1.4.4 XSS Vulnerabilities";
  19.   script_name(english:name["english"]);
  20.  
  21.   desc["english"] = "
  22. The target is running at least one instance of SquirrelMail whose
  23. version number suggests it is vulnerable to one or more cross-site
  24. scripting vulnerabilities :
  25.  
  26. - Insufficient escaping of integer variables in webmail.php allows a
  27. remote attacker to include HTML / script into a SquirrelMail webpage
  28. (affects 1.4.0-RC1 - 1.4.4-RC1). 
  29.  
  30. - Insufficient checking of incoming URL vars in webmail.php allows an
  31. attacker to include arbitrary remote web pages in the SquirrelMail
  32. frameset (affects 1.4.0-RC1 - 1.4.4-RC1). 
  33.  
  34. - A recent change in prefs.php allows an attacker to provide a
  35. specially crafted URL that could include local code into the
  36. SquirrelMail code if and only if PHP's register_globals setting is
  37. enabled (affects 1.4.3-RC1 - 1.4.4-RC1). 
  38.  
  39. ***** Nessus has determined the vulnerability exists on the target
  40. ***** simply by looking at the version number of Squirrelmail 
  41. ***** installed there.
  42.  
  43. Solution : Upgrade to SquirrelMail 1.4.4 or later.
  44. Risk factor : Medium";
  45.   script_description(english:desc["english"]);
  46.  
  47.   summary["english"] = "Checks for Three XSS Vulnerabilities in SquirrelMail < 1.4.4";
  48.   script_summary(english:summary["english"]);
  49.  
  50.   script_category(ACT_GATHER_INFO);
  51.   script_copyright(english:"This script is Copyright (C) 2005 George A. Theall");
  52.  
  53.   family["english"] = "CGI abuses : XSS";
  54.   script_family(english:family["english"]);
  55.  
  56.   script_dependencie("global_settings.nasl", "squirrelmail_detect.nasl");
  57.   script_require_ports("Services/www", 80);
  58.  
  59.   exit(0);
  60. }
  61.  
  62. include("global_settings.inc");
  63. include("http_func.inc");
  64.  
  65. port = get_http_port(default:80);
  66. if (!get_port_state(port)) exit(0);
  67. debug_print("searching for 3 XSS vulnerabilities in SquirrelMail < 1.4.3 on port ", port, ".");
  68.  
  69.  
  70. # Check each installed instance, stopping if we find a vulnerability.
  71. installs = get_kb_list(string("www/", port, "/squirrelmail"));
  72. if (isnull(installs)) exit(0);
  73. foreach install (installs) {
  74.   matches = eregmatch(string:install, pattern:"^(.+) under (/.*)$");
  75.   if (!isnull(matches)) {
  76.     ver = matches[1];
  77.     dir = matches[2];
  78.     debug_print("checking version ", ver, " under ", dir, ".");
  79.  
  80.     if (ereg(pattern:"^1\.4\.([0-3](-RC.*)?|4-RC1)$", string:ver)) {
  81.       security_warning(port);
  82.       exit(0);
  83.     }
  84.   }
  85. }
  86.